package com.flynn.rock.crm.model.employee.request;

import com.flynn.rock.crm.enums.EmployeeStatus;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

@Data
@Schema(description = "保存员工请求实体")
public class SaveEmployeeRequest {

    @Schema(description = "员工ID")
    private Long employeeId;

    @NotBlank(message = "姓名不能为空")
    @Schema(description = "员工姓名")
    private String realName;

    @NotNull(message = "请选择员工所属部门")
    @Schema(description = "员工所属部门")
    private Long deptId;

    @NotNull(message = "请选择员工所属角色")
    @Schema(description = "员工所属角色")
    private Long roleId;

    @NotBlank(message = "手机号不能为空")
    @Schema(description = "员工电话")
    private String phone;

    @Schema(description = "登录密码")
    private String password;

    @Schema(description = "员工性别")
    private String gender;

    @Schema(description = "员工年龄")
    private Integer age;

    @Schema(hidden = true)
    private EmployeeStatus status = EmployeeStatus.INCUMBENCY;
}
